package com.zhuanzhuan.hero.user.facade;

import com.bj58.spat.scf.server.contract.annotation.ServiceContract;
import com.bj58.zhuanzhuan.zzentry.common.service.entity.ServiceHeaderEntity;
import com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult;
import com.bj58.zhuanzhuan.zzentry.common.service.model.openEntry.ZZHeader;
import com.zhuanzhuan.hero.user.dto.SavePaymentDTO;
import com.zhuanzhuan.hero.user.vo.UserPaymentVO;

import java.util.List;

/**
 * @ClassName IUserPaymentFacade
 * @Description
 * @Author hanjunjun
 * @Date 2024/6/19 14:41
 */
@ServiceContract
public interface IUserPaymentFacade {

    /**
     * 前端-收款信息-保存用户收款信息
     *
     * @param header
     * @param savePaymentDTO
     * @return com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult<java.lang.Void>
     * @author  hanjunjun
     * @date 2024/6/19
     **/
    ZZOpenScfBaseResult<Boolean> saveUserPayment(@ZZHeader ServiceHeaderEntity header, SavePaymentDTO savePaymentDTO);

    /**
     * 前端-收款信息-查询用户收款信息
     *
     * @param header
     * @return com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult<com.zhaunzhuan.hero.user.vo.UserPaymentVO>
     * @author  hanjunjun
     * @date 2024/6/19
     **/
    ZZOpenScfBaseResult<List<UserPaymentVO>> queryUserPaymentInfo(@ZZHeader ServiceHeaderEntity header);

    /**
     * 前端-收款信息-查询默认收款方式
     *
     * @param header
     * @return com.bj58.zhuanzhuan.zzentry.common.service.entity.ZZOpenScfBaseResult<com.zhuanzhuan.hero.user.vo.UserPaymentVO>
     * @author  hanjunjun
     * @date 2024/6/24
     **/
    ZZOpenScfBaseResult<UserPaymentVO> queryUserDefaultPaymentInfo(@ZZHeader ServiceHeaderEntity header);
}
